ActiveState Perl Debugger 1.0
Release Notes

Build 16 -- April 16, 1998

For the latest product information, please see:
http://www.ActiveState.com/pldb/


Contents

  1. System Requirements
  2. Installing ActiveState Perl Debugger
  3. Using ActiveState Perl Debugger
  4. Troubleshooting/FAQ
  5. Changes from previous releases

1. System Requirements


  • Microsoft Windows 95 or NT.
  • Perl for Win32, Build 310 or later, or, Standard Distribution 5.004xx Release
  • Web browser
    2. Installing ActiveState Perl Debugger


    To operate properly, ActiveState Perl Debugger requires an Activation key. To get a key, go to the ActiveState Perl Debugger Web page at http://www.ActiveState.com/pldb/default.htm and select either Buy-it, to purchase a key, or Try-it, to get a trial key. You can also select Product licensing from the ActiveState Perl Debugger program group in the Start menu, if you have already installed the software. Instructions on how to get your Activation Key will be emailed to you.

    To succesfully install and activate ActiveState Perl Debugger, you should first run the setup program and then run the Activation Key. The setup program will prompt you (a) to accept the terms of the License Agreement, (b) for the destination directory for ActiveState Perl Debugger, (c) whether you are using the Standard Distribution 5.004xx Release and (d) for the name of a program group to install shortcuts to the help and read me files.

    Once ActiveState Perl Debugger has been successfully installed you will have to run the Activation Key to license your application. With the application installed and the Activation Key run, you can start using it immediately by running Perl with the "-d" option, as in:

    C:\SCRIPTS>perl -d script.pl input.txt output.txt
    Instead of the console-based debugger that would normally be displayed, a Windows application with the caption "ActiveState Perl Debugger" will appear, displaying the Perl script and pointing to the first line in that Perl script to be evaluated.


    3. Using ActiveState Perl Debugger

    If you have used a debugger before, using ActiveState Perl Debugger should come naturally. All of the basic debugger functionality is there, including stepping through the script, setting breakpoints, running the script until a breakpoint is hit, etc. Explore the various menus to see what is possible.


    4. Troubleshooting

    FAQ

    Q. The debugger installed OK, but the licensing part failed, what should I do?

    A. Select "Product Licensing" from the "ActiveState Perl Debugger" program group in the "Start" menu to start the licensing process again. Or, select "Purchase" in the ActiveState Perl Debugger splash screen

    Q. I can't dump my variables.

    A. This is a known issue, however, there is a workaround. Try assigning the my variable to a temporary variable in the Quick Eval dialog, and then dumping the temporary variable.

    Q. I'm trying to run ActiveState Perl Debugger using the -d option, but I'm getting an error message that says ole.pm and config.pm cannot be found. What's going on?

    A. It sounds like you don't have Perl properly installed. After you have copied the Perl files onto your machine using the Perl installer, make sure you run the appropriate batch file to complete the install. If the install is successful, the debugger should be able to locate the standard library modules and everything should work fine.

    The following registry key contains the complete path to the /lib directory:

    [HKEY_LOCALMACHINE/Software/ActiveWare/PRIVLIB]
    If the directory in this key is not the same as the /lib directory actual location, you should reinstall, as mentioned above, however, changing the registry entry to match your configuration may also fix the problem. (please see your Windows NT documentation for more information on changing registry entries.

    Q. I'm using the -d option when I run Perl, but ActiveState Perl Debugger window isn't being displayed, and the console window is displaying a "DB<1>" prompt. What do I do?

    A. If you see the DB<1> prompt, you are running the default console-based debugger that comes with Perl. It sounds like your PERL5DB environment variable is not being set properly. Running the installation program again should fix the problem.

    Q. ActiveState Perl Debugger is behaving strangely and I don't know what's wrong. What can I do?

    A. There are various things that you can try if ActiveState Perl Debugger is not working as you would expect it to.

    The first thing you should do is check which version of Perl you are running. If you run Perl with the -v option, you can find out which build number you are using. ActiveState Perl Debugger should work with most builds of Perl, but it has only been extensively tested with builds later than 310. Older builds may not work properly.

    Another thing you can try is to click "Reset All Settings" in the "Options" dialog of the Tools menu. This will cause ActiveState Perl Debugger to forget all of its settings, including window placement, breakpoints, and other settings, but it might solve the problem that you are having.

    Q. The splash screen that appears when I start ActiveState Perl Debugger was cool the first dozen times, but how do I get rid of it?

    A. While ActiveState Perl Debugger is running, select the Options command of the Tools menu and uncheck Display Splash Screen in the General tab.

    Q. I'm trying to step through my Perl program, but most of the debugging commands are beeping at me. What's going on?

    A. Look at the lower-right hand corner of ActiveState Perl Debugger window the status bar should say Ready or Working. If it says Working, the Perl program is currently executing and can't be interrupted by the debugger. You must either wait for your Perl program to stop executing (by hitting a breakpoint or being done with the program) or stop the program manually by hitting or in the console window.

    Q. I've edited my Perl program and now my breakpoints are all in the wrong places. What do I do?

    A. ActiveState Perl Debugger keeps track of breakpoints so that you don't have to enter them every time you run the debugger. However, if you add or remove lines from your program the breakpoints will no longer be in the right places. You can fix them by either selecting Edit Breakpoints from the Edit menu to change their placement, or remove the breakpoints and add them again in the right places.

    Q. Can I use both the console and visual debuggers?

    A. Yes. Change to the directory where you installed ActiveState Perl Debugger, a file called cmdDB.bat was copied there during installation. Typing cmdDB at the prompt in the console window (MSDOS/Command Prompt) will switch to the console debugger for the duration of that console session. If you launch another console session, the default debugger will once again be the ActiveState Perl Debugger.

    Q. Does ActiveState Perl Debugger work with the Standard Distribution Release 5.004xx?

    A Yes, during installation, specify that you are running the Standard Distribution Release, and your autoexec.bat file will be modified if you are running Windows 95.If you are running Windows NT, the PERL5DB variable will be set in your environment.

    Q. Why doesn't syntax coloring work correctly for multi-line strings?

    A. ActiveState Perl Debugger does not continue syntax coloring of strings (single and double quoted) or regular expressions across line boundaries. This is a design feature in that there were many circumstances where the syntax coloring can get confused and then the rest of the script would be colored incorrectly. To avoid this, syntax state gets cleared at the end of each line. Visual Perl, an upcoming product, will have more correct syntax coloring.

    Q. Why can't I edit scripts directly within the source window?

    A. You cannot edit scripts in ActiveState Perl Debugger source window. You can configure the debugger to launch your favorite editor by choosing Customize from the Tools menu and adding your editor. ActiveState is working on an integrated development environment, IDE, for Perl developers called Visual Perl which will include the ability to edit scripts directly within the source window as well as a host of other features that Perl developers have told us they want.

    Q. When I try to run my scripts in debug mode, I get the error:

    Undefined subroutine &Win32::Sleep called at C:\Program Files\ActiveState 
       Perl Debugger\PerlDB.pl line 153
    A. There are two ways to fix this. You can comment out line 153, or upgrade your Perl for Win32 to the latest build. You can get the latest version of Perl for Win32 from the ActiveState Web site at: http://www.ActiveState.com.

    Q. Can I trap compiler warnings in the debugger? I want to run perl with -w -d, but it doesn't seem to work.

    A. This is a known problem. A useful alternative is to first run the script with -c -w, fix those problems, then run with -d to make sure the script is doing what it should be doing.

    Q. My scripts causes a "use of uninitialized value" message when run with perl.exe, but seems to run with no error message in the Debugger.

    A. This is a known issue. The debugger declares variables to put into the proximity window, so the value is not "uninitialized".

    The most up to date list of FAQs for ActiveState Perl Debugger can be found at: http://www.ActiveState.com/pldb/faq/


    5. Changes from previous releases

    April 16/98 v1.0 -- Build 16

    New Features, Bug Fixes and Changes

    1. Remaining issues with Activation Keys and Windows 95 fixed.
    2. File names with hyphens in them can now be opened.
    3. Using "perl -de 0" switches to the console debugger for debugging


    April 6/98 v 1.0 -- Build 15

    New Features, Bug Fixes and Changes

    1. Activation Keys now work properly with Windows 95

    2. Trials and purchases can now be accessed by users who are behind firewalls.


    March 31/98 v 1.0 -- Build 14

    New Features, Bug Fixes and Changes

    1. New, streamlined licensing mechanism

    2. Prepackaged variables now show up properly in the proximity window

    Known Issues

    1. Dump Variable doesn't work properly for my variables. To work around this, assign the variable to a temporary variable in Quick Eval and then dump the temporary variable.

    2. Scripts with dbmclose do not work properly with the debugger. We think this problem is with the current releases of Perl, and should be fixed with Perl 5.005.

    3. Line numbering is incorrect for "pl2bat" wrapped files. We think this problem is with the current releases of Perl, and should be fixed with Perl 5.005.

    4. Syntax coloring does not always work as expected. Perl is complex language and we took a conservative approach to syntax coloring to minimize gross miscoloring. We are working to improve this in future revision.

    5. The proximity window of the debugger causes variables to be declared as it evaluates them. Scripts that report a "use of uninitialised value" message may not report the message when run under the debugger.

    6. Some scripts seem to have their behavior changed by the debugger. We are investigating this and are having problems replicating it. If you experience this bug, please submit a bug report on the ActiveState Web page: http://www.ActiveState.com/bugs.

    March 11/98 Beta 3 Release

    New Features, Bug Fixes and Changes

    1. If Standard Distribution 5.004xx option is selected during install, PERL5DB environment variable is added to the autoexec.bat if running under Windows 95 and put into the environment if running Windows NT.

    2. Installer now selects proper default folder for languages which do not use Program Folder.

    3. Registration/Licensing system implemented. Trial periods are now 3 days, with the user being able to get 3 trial periods. Final release will allow online purchasing.

    4. During install, you can now choose which editor is launched from the "Edit Source" menu item.

    Known Issues

    1. Scripts with dbmclose do not work with the debugger. We think this is a core problem, and should be fixed with Perl 5.005.

    2. Line numbering is incorrect for "pl2bat" wrapped files. This is a core bug.

    3. There is a problem with Win32::Registry. We are currently investigating it.

    4. Prefixed variables in packages do not show up in the proximity window properly.

    5. Syntax coloring is incorrect after $'.

    6. Syntax coloring doesn't work for multi-line strings. Due to the syntax of Perl, Syntax coloring works on a "best-guess" methodology. It is not perfect.

    7. Scripts that cause a "use of uninitialised value" message when run with perl.exe, may run with no error message in the Debugger. This is due to the debugger declaring variables to put into the proximity window.

    8. Some scripts seem to have their behavior changed by the debugger. We are investigating this. If you experience something similar, please submit a bug report on the ActiveState home page: http://www.ActiveState.com.



    Feb.24/98 Beta 2 Release

    New Features, Bug Fixes and Changes

    1. Added ability to select variables in source window and then 'quick eval', 'copy to watch' or 'copy to clipboard'.

    2. "perl -de 0' and 'perl -d -e"print $];"' now work.

    3. Debugger now easily installs for both 'Perl for Win32' and the Standard Distribution 5.004xx Release, commonly known as the 'GS' port.

    4. Installation now includes batch file to easily switch between console and visual debuggers. Run 'cmdDB.bat' from the directory in which you installed the debugger to switch.

    5. Added ability to double-click on line in margin to toggle a breakpoint.

    6. Visual Debugger will not launch if a script name is not specified, instead the console debugger is launched.

    7. The Perl5DB registry entry is now put into both HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE

    8. The name of the 'Variables' window has been changed to 'Proximity' window.

    Known Issues

    1. Scripts which use dbmclose do not work properly with the debugger

    2. Perl debugger uses 100% of the cpu time.

    3. Tooltips for variables currently does not work for: - hashes and hash elements - arrays and array elements - any variable not in the current name-space

    4. When using 'perl -d -x, all of the text before #!perl is shown in the source window, and when executing line 1 of the script, the instruction pointer is pointing to line 1 of the file, not the script.

    5. Breakpoints are only remembered for the script which was specified on the command line. Any other scripts which were opened by the debugger in the process of debugging the original script will have not have their breakpoints remembered.

    6. It is not currently possible to "unfold" hash structures.

    7. Variables which are contained in commented out code still show up in the 'proximity' variables window.

    8. There have been reports that 'Dump Variable' works inconsistently. We are investigating this.

    9. Syntax coloring does not currently work properly for multi-line strings.

    10. There are some problems with text selection in the source window.



    Jan.26/98 Beta 1 Release
    1. Source is not displayed when stepping into eval blocks The eval source is not displayed when stepping into code that was eval()ed. Stepping will continue to work as will the watch windows. This does not seem to work in the console debugger either.

    2. Cannot set break points in an eval block See Item 1 above

    3. 'perl -de 0' does not work If you desire to have command like interaction, configure your command window so that Perl works with the debug script that came with Perl. See the documentation for details on how to do this.

    4. 'perl -d -e"print $];"' See Item 3 above.